package com.siashan.unipay4j.wx;

import com.siashan.unipay4j.core.IBaseEnum;
import com.siashan.unipay4j.core.RefundStateEnum;

/**
 * 微信退款状态
 *
 * @author  siashan
 * @since  v1.0.1
 **/
public enum WxRefundStateEnum implements IBaseEnum<String> {
    /**
     * 退款成功
     */
    SUCCESS("SUCCESS", "退款成功",RefundStateEnum.SUCCESS),
    /**
     * 退款关闭
     */
    REFUNDCLOSE("REFUNDCLOSE", "退款关闭", RefundStateEnum.REFUNDCLOSE),
    /**
     * 退款处理中
     */
    PROCESSING("PROCESSING", "退款处理中",RefundStateEnum.PROCESSING),
    /**
     * 退款异常
     */
    CHANGE("CHANGE", "退款异常，退款到银行发现用户的卡作废或者冻结了，导致原路退款银行卡失败，可前往商户平台（pay.weixin.qq.com）-交易中心，手动处理此笔退款。",RefundStateEnum.CHANGE)
    ;
    private String value;
    private String desp;
    private RefundStateEnum refundState;

    WxRefundStateEnum(String status, String statusDesp,RefundStateEnum refundState) {
        this.value = status;
        this.desp = statusDesp;
        this.refundState = refundState;
    }

    @Override
    public String getValue() {
        return value;
    }

    public void setValue(String value) {
        this.value = value;
    }

    @Override
    public String getDesp() {
        return desp;
    }

    public void setDesp(String desp) {
        this.desp = desp;
    }

    public RefundStateEnum getRefundState() {
        return refundState;
    }

    public void setRefundState(RefundStateEnum refundState) {
        this.refundState = refundState;
    }
}
